﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:simpleType name="var">
		<xs:restriction base="xs:string">
			<xs:pattern value="\{[$]([0-9a-zA-Z_-]{1,16})\}" />
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bool">
		<xs:union memberTypes="xs:boolean var" />
	</xs:simpleType>
	<xs:simpleType name="double">
		<xs:union memberTypes="xs:double var" />
	</xs:simpleType>
	<xs:simpleType name="int">
		<xs:union memberTypes="xs:int var" />
	</xs:simpleType>
	<xs:simpleType name="quantum">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedShort">
					<xs:minInclusive value="0" />
					<xs:maxInclusive value="65535" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="color">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:pattern value="#([0-9a-fA-F]{3,4})" />
					<xs:pattern value="#([0-9a-fA-F]{2}){3,4}" />
					<xs:pattern value="#([0-9a-fA-F]{4}){3,4}" />
					<xs:pattern value="Transparent" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="AlphaOption">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Activate" />
					<xs:enumeration value="Associate" />
					<xs:enumeration value="Background" />
					<xs:enumeration value="Copy" />
					<xs:enumeration value="Deactivate" />
					<xs:enumeration value="Disassociate" />
					<xs:enumeration value="Discrete" />
					<xs:enumeration value="Extract" />
					<xs:enumeration value="Off" />
					<xs:enumeration value="On" />
					<xs:enumeration value="Opaque" />
					<xs:enumeration value="Remove" />
					<xs:enumeration value="Set" />
					<xs:enumeration value="Shape" />
					<xs:enumeration value="Transparent" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Channels">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="All" />
					<xs:enumeration value="Alpha" />
					<xs:enumeration value="Black" />
					<xs:enumeration value="Blue" />
					<xs:enumeration value="Composite" />
					<xs:enumeration value="Cyan" />
					<xs:enumeration value="Default" />
					<xs:enumeration value="Gray" />
					<xs:enumeration value="Grays" />
					<xs:enumeration value="Green" />
					<xs:enumeration value="Index" />
					<xs:enumeration value="Magenta" />
					<xs:enumeration value="Opacity" />
					<xs:enumeration value="Red" />
					<xs:enumeration value="RGB" />
					<xs:enumeration value="Sync" />
					<xs:enumeration value="TrueAlpha" />
					<xs:enumeration value="Yellow" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="ClassType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Direct" />
					<xs:enumeration value="Pseudo" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="ColorSpace">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="CMY" />
					<xs:enumeration value="CMYK" />
					<xs:enumeration value="GRAY" />
					<xs:enumeration value="HCL" />
					<xs:enumeration value="HCLp" />
					<xs:enumeration value="HSB" />
					<xs:enumeration value="HSI" />
					<xs:enumeration value="HSL" />
					<xs:enumeration value="HSV" />
					<xs:enumeration value="HWB" />
					<xs:enumeration value="Lab" />
					<xs:enumeration value="LCH" />
					<xs:enumeration value="LCHab" />
					<xs:enumeration value="LCHuv" />
					<xs:enumeration value="LMS" />
					<xs:enumeration value="Log" />
					<xs:enumeration value="Luv" />
					<xs:enumeration value="OHTA" />
					<xs:enumeration value="Rec601YCbCr" />
					<xs:enumeration value="Rec709YCbCr" />
					<xs:enumeration value="RGB" />
					<xs:enumeration value="scRGB" />
					<xs:enumeration value="sRGB" />
					<xs:enumeration value="Transparent" />
					<xs:enumeration value="XyY" />
					<xs:enumeration value="XYZ" />
					<xs:enumeration value="YCbCr" />
					<xs:enumeration value="YCC" />
					<xs:enumeration value="YDbDr" />
					<xs:enumeration value="YIQ" />
					<xs:enumeration value="YPbPr" />
					<xs:enumeration value="YUV" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="ColorType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Bilevel" />
					<xs:enumeration value="ColorSeparation" />
					<xs:enumeration value="ColorSeparationMatte" />
					<xs:enumeration value="Grayscale" />
					<xs:enumeration value="GrayscaleMatte" />
					<xs:enumeration value="Optimize" />
					<xs:enumeration value="Palette" />
					<xs:enumeration value="PaletteBilevelMatte" />
					<xs:enumeration value="PaletteMatte" />
					<xs:enumeration value="TrueColor" />
					<xs:enumeration value="TrueColorMatte" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="CompositeOperator">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Atop" />
					<xs:enumeration value="Blend" />
					<xs:enumeration value="Blur" />
					<xs:enumeration value="Bumpmap" />
					<xs:enumeration value="ChangeMask" />
					<xs:enumeration value="Clear" />
					<xs:enumeration value="ColorBurn" />
					<xs:enumeration value="ColorDodge" />
					<xs:enumeration value="Colorize" />
					<xs:enumeration value="Copy" />
					<xs:enumeration value="CopyAlpha" />
					<xs:enumeration value="CopyBlack" />
					<xs:enumeration value="CopyBlue" />
					<xs:enumeration value="CopyCyan" />
					<xs:enumeration value="CopyGreen" />
					<xs:enumeration value="CopyMagenta" />
					<xs:enumeration value="CopyRed" />
					<xs:enumeration value="CopyYellow" />
					<xs:enumeration value="Darken" />
					<xs:enumeration value="DarkenIntensity" />
					<xs:enumeration value="Difference" />
					<xs:enumeration value="Displace" />
					<xs:enumeration value="Dissolve" />
					<xs:enumeration value="Distort" />
					<xs:enumeration value="Divide" />
					<xs:enumeration value="DivideSrc" />
					<xs:enumeration value="Dst" />
					<xs:enumeration value="DstAtop" />
					<xs:enumeration value="DstIn" />
					<xs:enumeration value="DstOut" />
					<xs:enumeration value="DstOver" />
					<xs:enumeration value="Exclusion" />
					<xs:enumeration value="HardLight" />
					<xs:enumeration value="HardMix" />
					<xs:enumeration value="Hue" />
					<xs:enumeration value="In" />
					<xs:enumeration value="Lighten" />
					<xs:enumeration value="LightenIntensity" />
					<xs:enumeration value="LinearBurn" />
					<xs:enumeration value="LinearDodge" />
					<xs:enumeration value="LinearLight" />
					<xs:enumeration value="Luminize" />
					<xs:enumeration value="Mathematics" />
					<xs:enumeration value="MinusDst" />
					<xs:enumeration value="MinusSrc" />
					<xs:enumeration value="Modulate" />
					<xs:enumeration value="Modulus" />
					<xs:enumeration value="ModulusAdd" />
					<xs:enumeration value="Multiply" />
					<xs:enumeration value="NoComposite" />
					<xs:enumeration value="Out" />
					<xs:enumeration value="Over" />
					<xs:enumeration value="Overlay" />
					<xs:enumeration value="PegtopLight" />
					<xs:enumeration value="PinLight" />
					<xs:enumeration value="Plus" />
					<xs:enumeration value="Replace" />
					<xs:enumeration value="Saturate" />
					<xs:enumeration value="Screen" />
					<xs:enumeration value="SoftLight" />
					<xs:enumeration value="Src" />
					<xs:enumeration value="SrcAtop" />
					<xs:enumeration value="SrcIn" />
					<xs:enumeration value="SrcOut" />
					<xs:enumeration value="SrcOver" />
					<xs:enumeration value="Threshold" />
					<xs:enumeration value="VividLight" />
					<xs:enumeration value="Xor" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="CompressionMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="B44" />
					<xs:enumeration value="B44A" />
					<xs:enumeration value="BZip" />
					<xs:enumeration value="DXT1" />
					<xs:enumeration value="DXT3" />
					<xs:enumeration value="DXT5" />
					<xs:enumeration value="Faxo" />
					<xs:enumeration value="Group4" />
					<xs:enumeration value="JBIG1" />
					<xs:enumeration value="JBIG2" />
					<xs:enumeration value="JPEG" />
					<xs:enumeration value="JPEG2000" />
					<xs:enumeration value="LosslessJPEG" />
					<xs:enumeration value="LZMA" />
					<xs:enumeration value="LZW" />
					<xs:enumeration value="NoCompression" />
					<xs:enumeration value="Piz" />
					<xs:enumeration value="Pxr24" />
					<xs:enumeration value="RLE" />
					<xs:enumeration value="Zip" />
					<xs:enumeration value="ZipS" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="DctMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Fast" />
					<xs:enumeration value="Float" />
					<xs:enumeration value="Slow" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="DdsCompression">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Dxt1" />
					<xs:enumeration value="Dxt5" />
					<xs:enumeration value="None" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="DistortMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Affine" />
					<xs:enumeration value="AffineProjection" />
					<xs:enumeration value="Arc" />
					<xs:enumeration value="Barrel" />
					<xs:enumeration value="BarrelInverse" />
					<xs:enumeration value="Bilinear" />
					<xs:enumeration value="BilinearForward" />
					<xs:enumeration value="BilinearReverse" />
					<xs:enumeration value="Cylinder2Plane" />
					<xs:enumeration value="DePolar" />
					<xs:enumeration value="Perspective" />
					<xs:enumeration value="PerspectiveProjection" />
					<xs:enumeration value="Plane2Cylinder" />
					<xs:enumeration value="Polar" />
					<xs:enumeration value="Polynomial" />
					<xs:enumeration value="Resize" />
					<xs:enumeration value="ScaleRotateTranslate" />
					<xs:enumeration value="Sentinel" />
					<xs:enumeration value="Shepards" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="DitherMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="FloydSteinberg" />
					<xs:enumeration value="No" />
					<xs:enumeration value="Riemersma" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Endian">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="LSB" />
					<xs:enumeration value="MSB" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="EvaluateOperator">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Abs" />
					<xs:enumeration value="Add" />
					<xs:enumeration value="AddModulus" />
					<xs:enumeration value="And" />
					<xs:enumeration value="Cosine" />
					<xs:enumeration value="Divide" />
					<xs:enumeration value="Exponential" />
					<xs:enumeration value="GaussianNoise" />
					<xs:enumeration value="ImpulseNoise" />
					<xs:enumeration value="LaplacianNoise" />
					<xs:enumeration value="LeftShift" />
					<xs:enumeration value="Log" />
					<xs:enumeration value="Max" />
					<xs:enumeration value="Mean" />
					<xs:enumeration value="Median" />
					<xs:enumeration value="Min" />
					<xs:enumeration value="MultiplicativeNoise" />
					<xs:enumeration value="Multiply" />
					<xs:enumeration value="Or" />
					<xs:enumeration value="PoissonNoise" />
					<xs:enumeration value="Pow" />
					<xs:enumeration value="Right" />
					<xs:enumeration value="RootMeanSquare" />
					<xs:enumeration value="Set" />
					<xs:enumeration value="Sine" />
					<xs:enumeration value="Subtract" />
					<xs:enumeration value="Sum" />
					<xs:enumeration value="Threshold" />
					<xs:enumeration value="ThresholdBlack" />
					<xs:enumeration value="ThresholdWhite" />
					<xs:enumeration value="UniformNoise" />
					<xs:enumeration value="Xor" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="FillRule">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="EvenOdd" />
					<xs:enumeration value="Nonzero" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="FilterType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Bartlett" />
					<xs:enumeration value="Blackman" />
					<xs:enumeration value="Bohman" />
					<xs:enumeration value="Box" />
					<xs:enumeration value="Catrom" />
					<xs:enumeration value="Cosine" />
					<xs:enumeration value="Cubic" />
					<xs:enumeration value="Gaussian" />
					<xs:enumeration value="Hamming" />
					<xs:enumeration value="Hanning" />
					<xs:enumeration value="Hermite" />
					<xs:enumeration value="Jinc" />
					<xs:enumeration value="Kaiser" />
					<xs:enumeration value="Lagrange" />
					<xs:enumeration value="Lanczos" />
					<xs:enumeration value="Lanczos2" />
					<xs:enumeration value="Lanczos2Sharp" />
					<xs:enumeration value="LanczosRadius" />
					<xs:enumeration value="LanczosSharp" />
					<xs:enumeration value="Mitchell" />
					<xs:enumeration value="Parzen" />
					<xs:enumeration value="Point" />
					<xs:enumeration value="Quadratic" />
					<xs:enumeration value="Robidoux" />
					<xs:enumeration value="RobidouxSharp" />
					<xs:enumeration value="Sinc" />
					<xs:enumeration value="SincFast" />
					<xs:enumeration value="Spline" />
					<xs:enumeration value="Triangle" />
					<xs:enumeration value="Welsh" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="FontStretch">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Any" />
					<xs:enumeration value="Condensed" />
					<xs:enumeration value="Expanded" />
					<xs:enumeration value="ExtraCondensed" />
					<xs:enumeration value="ExtraExpanded" />
					<xs:enumeration value="Normal" />
					<xs:enumeration value="SemiCondensed" />
					<xs:enumeration value="SemiExpanded" />
					<xs:enumeration value="UltraCondensed" />
					<xs:enumeration value="UltraExpanded" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="FontStyleType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Any" />
					<xs:enumeration value="Italic" />
					<xs:enumeration value="Normal" />
					<xs:enumeration value="Oblique" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="FontWeight">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Weight100" />
					<xs:enumeration value="Weight200" />
					<xs:enumeration value="Weight300" />
					<xs:enumeration value="Weight400" />
					<xs:enumeration value="Weight500" />
					<xs:enumeration value="Weight600" />
					<xs:enumeration value="Weight700" />
					<xs:enumeration value="Weight800" />
					<xs:enumeration value="Weight900" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="GifDisposeMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Background" />
					<xs:enumeration value="None" />
					<xs:enumeration value="Previous" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Gravity">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Center" />
					<xs:enumeration value="East" />
					<xs:enumeration value="Forget" />
					<xs:enumeration value="North" />
					<xs:enumeration value="Northeast" />
					<xs:enumeration value="Northwest" />
					<xs:enumeration value="South" />
					<xs:enumeration value="Southeast" />
					<xs:enumeration value="Southwest" />
					<xs:enumeration value="West" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Interlace">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Gif" />
					<xs:enumeration value="Jpeg" />
					<xs:enumeration value="Line" />
					<xs:enumeration value="No" />
					<xs:enumeration value="Partition" />
					<xs:enumeration value="Plane" />
					<xs:enumeration value="Png" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Kernel">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Binomial" />
					<xs:enumeration value="Blur" />
					<xs:enumeration value="Chebyshev" />
					<xs:enumeration value="Comet" />
					<xs:enumeration value="Compass" />
					<xs:enumeration value="ConvexHull" />
					<xs:enumeration value="Corners" />
					<xs:enumeration value="Cross" />
					<xs:enumeration value="Diagonals" />
					<xs:enumeration value="Diamond" />
					<xs:enumeration value="Disk" />
					<xs:enumeration value="DoG" />
					<xs:enumeration value="Edges" />
					<xs:enumeration value="Euclidean" />
					<xs:enumeration value="FreiChen" />
					<xs:enumeration value="Gaussian" />
					<xs:enumeration value="Kirsch" />
					<xs:enumeration value="Laplacian" />
					<xs:enumeration value="LineEnds" />
					<xs:enumeration value="LineJunctions" />
					<xs:enumeration value="LoG" />
					<xs:enumeration value="Manhattan" />
					<xs:enumeration value="Octagon" />
					<xs:enumeration value="Octagonal" />
					<xs:enumeration value="Peaks" />
					<xs:enumeration value="Plus" />
					<xs:enumeration value="Prewitt" />
					<xs:enumeration value="Rectangle" />
					<xs:enumeration value="Ridges" />
					<xs:enumeration value="Ring" />
					<xs:enumeration value="Roberts" />
					<xs:enumeration value="Skeleton" />
					<xs:enumeration value="Sobel" />
					<xs:enumeration value="Square" />
					<xs:enumeration value="ThinSE" />
					<xs:enumeration value="Unity" />
					<xs:enumeration value="UserDefined" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="LineCap">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Butt" />
					<xs:enumeration value="Round" />
					<xs:enumeration value="Square" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="LineJoin">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Bevel" />
					<xs:enumeration value="Miter" />
					<xs:enumeration value="Round" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="MagickFormat">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="A" />
					<xs:enumeration value="Aai" />
					<xs:enumeration value="Ai" />
					<xs:enumeration value="Art" />
					<xs:enumeration value="Arw" />
					<xs:enumeration value="Avi" />
					<xs:enumeration value="Avs" />
					<xs:enumeration value="B" />
					<xs:enumeration value="Bgr" />
					<xs:enumeration value="Bgra" />
					<xs:enumeration value="Bgro" />
					<xs:enumeration value="Bmp" />
					<xs:enumeration value="Bmp2" />
					<xs:enumeration value="Bmp3" />
					<xs:enumeration value="Brf" />
					<xs:enumeration value="C" />
					<xs:enumeration value="Cal" />
					<xs:enumeration value="Cals" />
					<xs:enumeration value="Canvas" />
					<xs:enumeration value="Caption" />
					<xs:enumeration value="Cin" />
					<xs:enumeration value="Cip" />
					<xs:enumeration value="Clip" />
					<xs:enumeration value="Clipboard" />
					<xs:enumeration value="Cmyk" />
					<xs:enumeration value="Cmyka" />
					<xs:enumeration value="Cr2" />
					<xs:enumeration value="Crw" />
					<xs:enumeration value="Cur" />
					<xs:enumeration value="Cut" />
					<xs:enumeration value="Dcm" />
					<xs:enumeration value="Dcr" />
					<xs:enumeration value="Dcx" />
					<xs:enumeration value="Dds" />
					<xs:enumeration value="Dfont" />
					<xs:enumeration value="Dib" />
					<xs:enumeration value="Dng" />
					<xs:enumeration value="Dpx" />
					<xs:enumeration value="Dxt1" />
					<xs:enumeration value="Dxt5" />
					<xs:enumeration value="Emf" />
					<xs:enumeration value="Epdf" />
					<xs:enumeration value="Epi" />
					<xs:enumeration value="Eps" />
					<xs:enumeration value="Eps2" />
					<xs:enumeration value="Eps3" />
					<xs:enumeration value="Epsf" />
					<xs:enumeration value="Epsi" />
					<xs:enumeration value="Ept" />
					<xs:enumeration value="Ept2" />
					<xs:enumeration value="Ept3" />
					<xs:enumeration value="Erf" />
					<xs:enumeration value="Exr" />
					<xs:enumeration value="Fax" />
					<xs:enumeration value="Fits" />
					<xs:enumeration value="Fractal" />
					<xs:enumeration value="Fts" />
					<xs:enumeration value="G" />
					<xs:enumeration value="G3" />
					<xs:enumeration value="Gif" />
					<xs:enumeration value="Gif87" />
					<xs:enumeration value="Gradient" />
					<xs:enumeration value="Gray" />
					<xs:enumeration value="Group4" />
					<xs:enumeration value="Hald" />
					<xs:enumeration value="Hdr" />
					<xs:enumeration value="Histogram" />
					<xs:enumeration value="Hrz" />
					<xs:enumeration value="Htm" />
					<xs:enumeration value="Html" />
					<xs:enumeration value="Icb" />
					<xs:enumeration value="Ico" />
					<xs:enumeration value="Icon" />
					<xs:enumeration value="Iiq" />
					<xs:enumeration value="Info" />
					<xs:enumeration value="Inline" />
					<xs:enumeration value="Ipl" />
					<xs:enumeration value="Isobrl" />
					<xs:enumeration value="J2c" />
					<xs:enumeration value="J2k" />
					<xs:enumeration value="Jng" />
					<xs:enumeration value="Jnx" />
					<xs:enumeration value="Jp2" />
					<xs:enumeration value="Jpc" />
					<xs:enumeration value="Jpe" />
					<xs:enumeration value="Jpeg" />
					<xs:enumeration value="Jpg" />
					<xs:enumeration value="Jpm" />
					<xs:enumeration value="Jps" />
					<xs:enumeration value="Jpt" />
					<xs:enumeration value="Json" />
					<xs:enumeration value="K" />
					<xs:enumeration value="K25" />
					<xs:enumeration value="Kdc" />
					<xs:enumeration value="Label" />
					<xs:enumeration value="M" />
					<xs:enumeration value="M2v" />
					<xs:enumeration value="M4v" />
					<xs:enumeration value="Mac" />
					<xs:enumeration value="Map" />
					<xs:enumeration value="Mask" />
					<xs:enumeration value="Mat" />
					<xs:enumeration value="Matte" />
					<xs:enumeration value="Mef" />
					<xs:enumeration value="Miff" />
					<xs:enumeration value="Mng" />
					<xs:enumeration value="Mono" />
					<xs:enumeration value="Mov" />
					<xs:enumeration value="Mp4" />
					<xs:enumeration value="Mpc" />
					<xs:enumeration value="Mpeg" />
					<xs:enumeration value="Mpg" />
					<xs:enumeration value="Mrw" />
					<xs:enumeration value="Msl" />
					<xs:enumeration value="Msvg" />
					<xs:enumeration value="Mtv" />
					<xs:enumeration value="Mvg" />
					<xs:enumeration value="Nef" />
					<xs:enumeration value="Nrw" />
					<xs:enumeration value="Null" />
					<xs:enumeration value="O" />
					<xs:enumeration value="Orf" />
					<xs:enumeration value="Otb" />
					<xs:enumeration value="Otf" />
					<xs:enumeration value="Pal" />
					<xs:enumeration value="Palm" />
					<xs:enumeration value="Pam" />
					<xs:enumeration value="Pango" />
					<xs:enumeration value="Pattern" />
					<xs:enumeration value="Pbm" />
					<xs:enumeration value="Pcd" />
					<xs:enumeration value="Pcds" />
					<xs:enumeration value="Pcl" />
					<xs:enumeration value="Pct" />
					<xs:enumeration value="Pcx" />
					<xs:enumeration value="Pdb" />
					<xs:enumeration value="Pdf" />
					<xs:enumeration value="Pdfa" />
					<xs:enumeration value="Pef" />
					<xs:enumeration value="Pes" />
					<xs:enumeration value="Pfa" />
					<xs:enumeration value="Pfb" />
					<xs:enumeration value="Pfm" />
					<xs:enumeration value="Pgm" />
					<xs:enumeration value="Picon" />
					<xs:enumeration value="Pict" />
					<xs:enumeration value="Pix" />
					<xs:enumeration value="Pjpeg" />
					<xs:enumeration value="Plasma" />
					<xs:enumeration value="Png" />
					<xs:enumeration value="Png00" />
					<xs:enumeration value="Png24" />
					<xs:enumeration value="Png32" />
					<xs:enumeration value="Png48" />
					<xs:enumeration value="Png64" />
					<xs:enumeration value="Png8" />
					<xs:enumeration value="Pnm" />
					<xs:enumeration value="Ppm" />
					<xs:enumeration value="Preview" />
					<xs:enumeration value="Ps" />
					<xs:enumeration value="Ps2" />
					<xs:enumeration value="Ps3" />
					<xs:enumeration value="Psb" />
					<xs:enumeration value="Psd" />
					<xs:enumeration value="Ptif" />
					<xs:enumeration value="Pwp" />
					<xs:enumeration value="R" />
					<xs:enumeration value="RadialGradient" />
					<xs:enumeration value="Raf" />
					<xs:enumeration value="Ras" />
					<xs:enumeration value="Raw" />
					<xs:enumeration value="Rgb" />
					<xs:enumeration value="Rgba" />
					<xs:enumeration value="Rgbo" />
					<xs:enumeration value="Rgf" />
					<xs:enumeration value="Rla" />
					<xs:enumeration value="Rle" />
					<xs:enumeration value="Rmf" />
					<xs:enumeration value="Rw2" />
					<xs:enumeration value="Scr" />
					<xs:enumeration value="Screenshot" />
					<xs:enumeration value="Sct" />
					<xs:enumeration value="Sfw" />
					<xs:enumeration value="Sgi" />
					<xs:enumeration value="Shtml" />
					<xs:enumeration value="Six" />
					<xs:enumeration value="Sixel" />
					<xs:enumeration value="SparseColor" />
					<xs:enumeration value="Sr2" />
					<xs:enumeration value="Srf" />
					<xs:enumeration value="Stegano" />
					<xs:enumeration value="Sun" />
					<xs:enumeration value="Svg" />
					<xs:enumeration value="Svgz" />
					<xs:enumeration value="Text" />
					<xs:enumeration value="Tga" />
					<xs:enumeration value="ThreeFr" />
					<xs:enumeration value="Thumbnail" />
					<xs:enumeration value="Tif" />
					<xs:enumeration value="Tiff" />
					<xs:enumeration value="Tiff64" />
					<xs:enumeration value="Tile" />
					<xs:enumeration value="Tim" />
					<xs:enumeration value="Ttc" />
					<xs:enumeration value="Ttf" />
					<xs:enumeration value="Txt" />
					<xs:enumeration value="Ubrl" />
					<xs:enumeration value="Uil" />
					<xs:enumeration value="Unknown" />
					<xs:enumeration value="Uyvy" />
					<xs:enumeration value="Vda" />
					<xs:enumeration value="Vicar" />
					<xs:enumeration value="Vid" />
					<xs:enumeration value="Viff" />
					<xs:enumeration value="Vips" />
					<xs:enumeration value="Vst" />
					<xs:enumeration value="Wbmp" />
					<xs:enumeration value="WebP" />
					<xs:enumeration value="Wmf" />
					<xs:enumeration value="Wmv" />
					<xs:enumeration value="Wpg" />
					<xs:enumeration value="X3f" />
					<xs:enumeration value="Xbm" />
					<xs:enumeration value="Xc" />
					<xs:enumeration value="Xcf" />
					<xs:enumeration value="Xpm" />
					<xs:enumeration value="Xps" />
					<xs:enumeration value="Xv" />
					<xs:enumeration value="Y" />
					<xs:enumeration value="Ycbcr" />
					<xs:enumeration value="Ycbcra" />
					<xs:enumeration value="Yuv" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="MorphologyMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="BottomHat" />
					<xs:enumeration value="Close" />
					<xs:enumeration value="CloseIntensity" />
					<xs:enumeration value="Convolve" />
					<xs:enumeration value="Correlate" />
					<xs:enumeration value="Dilate" />
					<xs:enumeration value="DilateIntensity" />
					<xs:enumeration value="Distance" />
					<xs:enumeration value="Edge" />
					<xs:enumeration value="EdgeIn" />
					<xs:enumeration value="EdgeOut" />
					<xs:enumeration value="Erode" />
					<xs:enumeration value="ErodeIntensity" />
					<xs:enumeration value="HitAndMiss" />
					<xs:enumeration value="IterativeDistance" />
					<xs:enumeration value="Open" />
					<xs:enumeration value="OpenIntensity" />
					<xs:enumeration value="Smooth" />
					<xs:enumeration value="Thicken" />
					<xs:enumeration value="Thinning" />
					<xs:enumeration value="TopHat" />
					<xs:enumeration value="Voronoi" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="NoiseType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Gaussian" />
					<xs:enumeration value="Impulse" />
					<xs:enumeration value="Laplacian" />
					<xs:enumeration value="MultiplicativeGaussian" />
					<xs:enumeration value="Poisson" />
					<xs:enumeration value="Uniform" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="OrientationType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="BottomLeft" />
					<xs:enumeration value="BottomRight" />
					<xs:enumeration value="LeftBotom" />
					<xs:enumeration value="LeftTop" />
					<xs:enumeration value="RightBottom" />
					<xs:enumeration value="RightTop" />
					<xs:enumeration value="TopLeft" />
					<xs:enumeration value="TopRight" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="PaintMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="FillToBorder" />
					<xs:enumeration value="Floodfill" />
					<xs:enumeration value="Point" />
					<xs:enumeration value="Replace" />
					<xs:enumeration value="Reset" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="PixelIntensityMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Average" />
					<xs:enumeration value="Brightness" />
					<xs:enumeration value="Lightness" />
					<xs:enumeration value="MS" />
					<xs:enumeration value="Rec601Luma" />
					<xs:enumeration value="Rec601Luminance" />
					<xs:enumeration value="Rec709LumaPixel" />
					<xs:enumeration value="Rec709Luminance" />
					<xs:enumeration value="RMS" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="PixelInterpolateMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Average" />
					<xs:enumeration value="Average16" />
					<xs:enumeration value="Average9" />
					<xs:enumeration value="Background" />
					<xs:enumeration value="Bilinear" />
					<xs:enumeration value="Blend" />
					<xs:enumeration value="Catrom" />
					<xs:enumeration value="Integer" />
					<xs:enumeration value="Mesh" />
					<xs:enumeration value="Nearest" />
					<xs:enumeration value="Spline" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="ProfileTypes">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="App" />
					<xs:enumeration value="Icc" />
					<xs:enumeration value="Iptc" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="RenderingIntent">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Absolute" />
					<xs:enumeration value="Perceptual" />
					<xs:enumeration value="Relative" />
					<xs:enumeration value="Saturation" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Resolution">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="PixelsPerCentimeter" />
					<xs:enumeration value="PixelsPerInch" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="SparseColorMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Barycentric" />
					<xs:enumeration value="Bilinear" />
					<xs:enumeration value="Inverse" />
					<xs:enumeration value="Polynomial" />
					<xs:enumeration value="Shepards" />
					<xs:enumeration value="Voronoi" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="StorageType">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Char" />
					<xs:enumeration value="Double" />
					<xs:enumeration value="Float" />
					<xs:enumeration value="Long" />
					<xs:enumeration value="LongLong" />
					<xs:enumeration value="Quantum" />
					<xs:enumeration value="Short" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="TextDecoration">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="LineThrough" />
					<xs:enumeration value="NoDecoration" />
					<xs:enumeration value="Overline" />
					<xs:enumeration value="Underline" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="TextDirection">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="LeftToRight" />
					<xs:enumeration value="RightToLeft" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="TiffAlpha">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Associated" />
					<xs:enumeration value="Unassociated" />
					<xs:enumeration value="Unspecified" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="VirtualPixelMethod">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Background" />
					<xs:enumeration value="Black" />
					<xs:enumeration value="CheckerTile" />
					<xs:enumeration value="Dither" />
					<xs:enumeration value="Edge" />
					<xs:enumeration value="Gray" />
					<xs:enumeration value="HorizontalTile" />
					<xs:enumeration value="HorizontalTileEdge" />
					<xs:enumeration value="Mask" />
					<xs:enumeration value="Mirror" />
					<xs:enumeration value="Random" />
					<xs:enumeration value="Tile" />
					<xs:enumeration value="Transparent" />
					<xs:enumeration value="VerticalTile" />
					<xs:enumeration value="VerticalTileEdge" />
					<xs:enumeration value="White" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="ColorProfile">
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="AdobeRGB1998" />
					<xs:enumeration value="AppleRGB" />
					<xs:enumeration value="CoatedFOGRA39" />
					<xs:enumeration value="ColorMatchRGB" />
					<xs:enumeration value="SRGB" />
					<xs:enumeration value="USWebCoatedSWOP" />
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="var" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:complexType name="coordinate">
		<xs:attribute name="x" use="required" type="double" />
		<xs:attribute name="y" use="required" type="double" />
	</xs:complexType>
	<xs:complexType name="coordinates">
		<xs:sequence>
			<xs:element name="coordinate" minOccurs="3" maxOccurs="unbounded" type="coordinate" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ddsWriteDefines">
		<xs:attribute name="clusterFit" type="bool" />
		<xs:attribute name="compression" type="DdsCompression" />
		<xs:attribute name="mipmaps" type="int" />
		<xs:attribute name="weightByAlpha" type="bool" />
	</xs:complexType>
	<xs:complexType name="jpegReadDefines">
		<xs:attribute name="blockSmoothing" type="bool" />
		<xs:attribute name="colors" type="int" />
		<xs:attribute name="dctMethod" type="DctMethod" />
		<xs:attribute name="fancyUpsampling" type="bool" />
		<xs:attribute name="size" type="geometry" />
		<xs:attribute name="skipProfiles" type="ProfileTypes" />
	</xs:complexType>
	<xs:complexType name="jpegWriteDefines">
		<xs:sequence>
			<xs:element name="samplingFactors" minOccurs="0" type="geometries" />
		</xs:sequence>
		<xs:attribute name="dctMethod" type="DctMethod" />
		<xs:attribute name="extent" type="int" />
		<xs:attribute name="optimizeCoding" type="bool" />
		<xs:attribute name="quality" type="geometry" />
		<xs:attribute name="quantizationTables" type="xs:string" />
	</xs:complexType>
	<xs:complexType name="pdfReadDefines">
		<xs:attribute name="fitPage" type="geometry" />
		<xs:attribute name="useCropBox" type="bool" />
		<xs:attribute name="useTrimBox" type="bool" />
	</xs:complexType>
	<xs:complexType name="tiffReadDefines">
		<xs:attribute name="ignoreExifPoperties" type="bool" />
	</xs:complexType>
	<xs:complexType name="tiffWriteDefines">
		<xs:attribute name="alpha" type="TiffAlpha" />
		<xs:attribute name="endian" type="Endian" />
		<xs:attribute name="fillOrder" type="Endian" />
		<xs:attribute name="rowsPerStrip" type="int" />
		<xs:attribute name="tileGeometry" type="geometry" />
	</xs:complexType>
	<xs:complexType name="doubleArray">
		<xs:sequence>
			<xs:element name="value" type="xs:double" minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
		<xs:attribute name="variable" type="var" use="optional" />
	</xs:complexType>
	<xs:complexType name="drawable">
		<xs:group ref="drawables" />
	</xs:complexType>
	<xs:complexType name="drawables">
		<xs:sequence>
			<xs:group ref="drawables" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="empty">
		<xs:complexContent>
			<xs:restriction base="xs:anyType" />
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="geometry">
		<xs:restriction base="xs:string">
			<xs:pattern value="((\d+x?\d*)|(\d*x\d+))([+-]\d+[+-]\d+)?([\&gt;\&lt;\@\%^!]{1,2})?" />
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="geometries">
		<xs:sequence>
			<xs:element name="geometry" minOccurs="1">
				<xs:complexType>
					<xs:attribute name="value" type="geometry" />
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="iDefines">
		<xs:group ref="iDefines" />
	</xs:complexType>
	<xs:complexType name="image">
		<xs:sequence>
			<xs:element name="settings" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="defines" minOccurs="0" type="iReadDefines" />
						<xs:element name="pixelStorage" minOccurs="0" type="pixelStorageSettings" />
						<xs:element name="setDefine" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:attribute name="format" use="required" type="MagickFormat" />
								<xs:attribute name="name" use="required" type="xs:string" />
								<xs:attribute name="value" use="required" type="xs:string" />
							</xs:complexType>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="colorSpace" type="ColorSpace" />
					<xs:attribute name="density" type="pointd" />
					<xs:attribute name="format" type="MagickFormat" />
					<xs:attribute name="frameCount" type="int" />
					<xs:attribute name="frameIndex" type="int" />
					<xs:attribute name="height" type="int" />
					<xs:attribute name="useMonochrome" type="bool" />
					<xs:attribute name="width" type="int" />
				</xs:complexType>
			</xs:element>
			<xs:group ref="actions" />
		</xs:sequence>
		<xs:attribute name="fileName" type="xs:string" />
		<xs:attribute name="id" type="xs:string" />
	</xs:complexType>
	<xs:complexType name="imageProfile">
		<xs:attribute name="fileName" use="required" type="xs:string" />
		<xs:attribute name="name" use="required" type="xs:string" />
	</xs:complexType>
	<xs:complexType name="iReadDefines">
		<xs:group ref="iReadDefines" />
	</xs:complexType>
	<xs:complexType name="montageSettings">
		<xs:attribute name="backgroundColor" type="color" />
		<xs:attribute name="borderColor" type="color" />
		<xs:attribute name="borderWidth" type="int" />
		<xs:attribute name="compose" type="CompositeOperator" />
		<xs:attribute name="fillColor" type="color" />
		<xs:attribute name="font" type="xs:string" />
		<xs:attribute name="fontPointsize" type="int" />
		<xs:attribute name="frameGeometry" type="geometry" />
		<xs:attribute name="geometry" type="geometry" />
		<xs:attribute name="gravity" type="Gravity" />
		<xs:attribute name="label" type="xs:string" />
		<xs:attribute name="shadow" type="bool" />
		<xs:attribute name="strokeColor" type="color" />
		<xs:attribute name="textureFileName" type="xs:string" />
		<xs:attribute name="tileGeometry" type="geometry" />
		<xs:attribute name="title" type="xs:string" />
		<xs:attribute name="transparentColor" type="color" />
	</xs:complexType>
	<xs:complexType name="paths">
		<xs:sequence>
			<xs:group ref="paths" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="pathArc">
		<xs:attribute name="radiusX" use="required" type="double" />
		<xs:attribute name="radiusY" use="required" type="double" />
		<xs:attribute name="rotationX" use="required" type="double" />
		<xs:attribute name="useLargeArc" use="required" type="bool" />
		<xs:attribute name="useSweep" use="required" type="bool" />
		<xs:attribute name="x" use="required" type="double" />
		<xs:attribute name="y" use="required" type="double" />
	</xs:complexType>
	<xs:complexType name="pathArcs">
		<xs:sequence>
			<xs:element name="coordinate" maxOccurs="unbounded" type="pathArc" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="pathCurveto">
		<xs:attribute name="x" use="required" type="double" />
		<xs:attribute name="x1" use="required" type="double" />
		<xs:attribute name="x2" use="required" type="double" />
		<xs:attribute name="y" use="required" type="double" />
		<xs:attribute name="y1" use="required" type="double" />
		<xs:attribute name="y2" use="required" type="double" />
	</xs:complexType>
	<xs:complexType name="pathCurvetos">
		<xs:sequence>
			<xs:element name="coordinate" maxOccurs="unbounded" type="pathCurveto" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="pathQuadraticCurveto">
		<xs:attribute name="x" use="required" type="double" />
		<xs:attribute name="x1" use="required" type="double" />
		<xs:attribute name="y" use="required" type="double" />
		<xs:attribute name="y1" use="required" type="double" />
	</xs:complexType>
	<xs:complexType name="pathQuadraticCurvetos">
		<xs:sequence>
			<xs:element name="coordinate" maxOccurs="unbounded" type="pathCurveto" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="pixelStorageSettings">
		<xs:attribute name="mapping" type="xs:string" />
		<xs:attribute name="storageType" type="StorageType" />
	</xs:complexType>
	<xs:simpleType name="pointd">
		<xs:restriction base="xs:string">
			<xs:pattern value="((\d+x?\d*)|(\d*x\d+))" />
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="profile">
		<xs:sequence>
			<xs:choice>
				<xs:element name="imageProfile" type="imageProfile" />
				<xs:element name="colorProfile">
					<xs:complexType>
						<xs:attribute name="name" type="ColorProfile" />
					</xs:complexType>
				</xs:element>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="quantizeSettings">
		<xs:attribute name="colors" type="int" />
		<xs:attribute name="colorSpace" type="ColorSpace" />
		<xs:attribute name="ditherMethod" type="DitherMethod" />
		<xs:attribute name="measureErrors" type="bool" />
		<xs:attribute name="treeDepth" type="int" />
	</xs:complexType>
	<xs:complexType name="sparseColorArg">
		<xs:attribute name="color" use="required" type="color" />
		<xs:attribute name="x" use="required" type="double" />
		<xs:attribute name="y" use="required" type="double" />
	</xs:complexType>
	<xs:complexType name="sparseColorArgs">
		<xs:sequence>
			<xs:element name="sparseColorArg" maxOccurs="unbounded" type="sparseColorArg" />
		</xs:sequence>
	</xs:complexType>
	<xs:group name="actions">
		<xs:sequence>
			<xs:choice minOccurs="0" maxOccurs="unbounded">
				<xs:element name="adjoin">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="alphaColor">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="animationDelay">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="animationIterations">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="antiAlias">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="backgroundColor">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="blackPointCompensation">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="borderColor">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="boxColor">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="classType">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="ClassType" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorFuzz">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorMapSize">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorSpace">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="ColorSpace" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorType">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="ColorType" />
					</xs:complexType>
				</xs:element>
				<xs:element name="comment">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="compose">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="CompositeOperator" />
					</xs:complexType>
				</xs:element>
				<xs:element name="compressionMethod">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="CompressionMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="debug">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="density">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="pointd" />
					</xs:complexType>
				</xs:element>
				<xs:element name="depth">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="endian">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="Endian" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fillColor">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fillPattern" type="image" />
				<xs:element name="fillRule">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="FillRule" />
					</xs:complexType>
				</xs:element>
				<xs:element name="filterType">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="FilterType" />
					</xs:complexType>
				</xs:element>
				<xs:element name="flashPixView">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="font">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fontPointsize">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="format">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="MagickFormat" />
					</xs:complexType>
				</xs:element>
				<xs:element name="gifDisposeMethod">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="GifDisposeMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="hasAlpha">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="interlace">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="Interlace" />
					</xs:complexType>
				</xs:element>
				<xs:element name="interpolate">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="PixelInterpolateMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="label">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="mask" type="image" />
				<xs:element name="orientation">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="OrientationType" />
					</xs:complexType>
				</xs:element>
				<xs:element name="page">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="geometry" />
					</xs:complexType>
				</xs:element>
				<xs:element name="quality">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="renderingIntent">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="RenderingIntent" />
					</xs:complexType>
				</xs:element>
				<xs:element name="resolutionUnits">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="Resolution" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeAntiAlias">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeColor">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeDashArray" type="doubleArray" />
				<xs:element name="strokeDashOffset">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeLineCap">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="LineCap" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeLineJoin">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="LineJoin" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeMiterLimit">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokePattern" type="image" />
				<xs:element name="strokeWidth">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textDirection">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="TextDirection" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textEncoding">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textGravity">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="Gravity" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textInterlineSpacing">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textInterwordSpacing">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textKerning">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="verbose">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="virtualPixelMethod">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="VirtualPixelMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="adaptiveBlur">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="adaptiveResize">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="adaptiveSharpen">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="adaptiveThreshold">
					<xs:complexType>
						<xs:attribute name="bias" type="double" />
						<xs:attribute name="height" use="required" type="int" />
						<xs:attribute name="width" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="addNoise">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="noiseType" use="required" type="NoiseType" />
					</xs:complexType>
				</xs:element>
				<xs:element name="addProfile" type="profile" />
				<xs:element name="alpha">
					<xs:complexType>
						<xs:attribute name="option" use="required" type="AlphaOption" />
					</xs:complexType>
				</xs:element>
				<xs:element name="annotate">
					<xs:complexType>
						<xs:attribute name="boundingArea" type="geometry" />
						<xs:attribute name="degrees" type="double" />
						<xs:attribute name="gravity" type="Gravity" />
						<xs:attribute name="text" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="autoGamma">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
					</xs:complexType>
				</xs:element>
				<xs:element name="autoLevel">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
					</xs:complexType>
				</xs:element>
				<xs:element name="autoOrient" type="empty" />
				<xs:element name="bitDepth">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="value" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="blackThreshold">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="threshold" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="blueShift">
					<xs:complexType>
						<xs:attribute name="factor" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="blur">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="border">
					<xs:complexType>
						<xs:attribute name="height" type="int" />
						<xs:attribute name="size" type="int" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="brightnessContrast">
					<xs:complexType>
						<xs:attribute name="brightness" use="required" type="double" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="contrast" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="cannyEdge">
					<xs:complexType>
						<xs:attribute name="lower" type="double" />
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
						<xs:attribute name="upper" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="cdl">
					<xs:complexType>
						<xs:attribute name="fileName" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="changeColorSpace">
					<xs:complexType>
						<xs:attribute name="value" use="required" type="ColorSpace" />
					</xs:complexType>
				</xs:element>
				<xs:element name="charcoal">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chop">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="width" type="int" />
						<xs:attribute name="xOffset" type="int" />
						<xs:attribute name="yOffset" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chopHorizontal">
					<xs:complexType>
						<xs:attribute name="offset" use="required" type="int" />
						<xs:attribute name="width" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chopVertical">
					<xs:complexType>
						<xs:attribute name="height" use="required" type="int" />
						<xs:attribute name="offset" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chromaBluePrimary">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chromaGreenPrimary">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chromaRedPrimary">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="chromaWhitePoint">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="clamp">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
					</xs:complexType>
				</xs:element>
				<xs:element name="clip">
					<xs:complexType>
						<xs:attribute name="inside" type="bool" />
						<xs:attribute name="pathName" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="clut">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="method" use="required" type="PixelInterpolateMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorAlpha">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorize">
					<xs:complexType>
						<xs:attribute name="alpha" type="double" />
						<xs:attribute name="alphaBlue" type="double" />
						<xs:attribute name="alphaGreen" type="double" />
						<xs:attribute name="alphaRed" type="double" />
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="colorMap">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
						<xs:attribute name="index" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="composite">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
						<xs:attribute name="args" type="xs:string" />
						<xs:attribute name="compose" type="CompositeOperator" />
						<xs:attribute name="gravity" type="Gravity" />
						<xs:attribute name="offset" type="geometry" />
						<xs:attribute name="x" type="int" />
						<xs:attribute name="y" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="connectedComponents">
					<xs:complexType>
						<xs:attribute name="connectivity" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="contrast">
					<xs:complexType>
						<xs:attribute name="enhance" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="contrastStretch">
					<xs:complexType>
						<xs:attribute name="blackPoint" use="required" type="double" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="whitePoint" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="crop">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="gravity" type="Gravity" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="cycleColormap">
					<xs:complexType>
						<xs:attribute name="amount" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="decipher">
					<xs:complexType>
						<xs:attribute name="passphrase" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="deskew">
					<xs:complexType>
						<xs:attribute name="threshold" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="despeckle" type="empty" />
				<xs:element name="determineColorType" type="empty" />
				<xs:element name="distort">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="arguments" type="doubleArray" />
						</xs:sequence>
						<xs:attribute name="bestfit" type="bool" />
						<xs:attribute name="method" use="required" type="DistortMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="edge">
					<xs:complexType>
						<xs:attribute name="radius" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="emboss">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="encipher">
					<xs:complexType>
						<xs:attribute name="passphrase" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="enhance" type="empty" />
				<xs:element name="equalize" type="empty" />
				<xs:element name="evaluate">
					<xs:complexType>
						<xs:attribute name="channels" use="required" type="Channels" />
						<xs:attribute name="evaluateOperator" use="required" type="EvaluateOperator" />
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="value" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="extent">
					<xs:complexType>
						<xs:attribute name="backgroundColor" type="color" />
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="gravity" type="Gravity" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="flip" type="empty" />
				<xs:element name="floodFill">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" minOccurs="0" type="image" />
						</xs:sequence>
						<xs:attribute name="alpha" type="int" />
						<xs:attribute name="borderColor" type="color" />
						<xs:attribute name="color" type="color" />
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="x" type="int" />
						<xs:attribute name="y" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="flop" type="empty" />
				<xs:element name="frame">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="innerBevel" type="int" />
						<xs:attribute name="outerBevel" type="int" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fx">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="expression" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="gamma">
					<xs:complexType>
						<xs:attribute name="gammeBlue" type="double" />
						<xs:attribute name="gammeGreen" type="double" />
						<xs:attribute name="gammeRed" type="double" />
						<xs:attribute name="value" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="gaussianBlur">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="sigma" use="required" type="double" />
						<xs:attribute name="width" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="grayscale">
					<xs:complexType>
						<xs:attribute name="method" use="required" type="PixelIntensityMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="haldClut">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="houghLine">
					<xs:complexType>
						<xs:attribute name="height" type="int" />
						<xs:attribute name="threshold" type="int" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="implode">
					<xs:complexType>
						<xs:attribute name="factor" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="inverseFloodFill">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" minOccurs="0" type="image" />
						</xs:sequence>
						<xs:attribute name="alpha" type="int" />
						<xs:attribute name="borderColor" type="color" />
						<xs:attribute name="color" type="color" />
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="x" type="int" />
						<xs:attribute name="y" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="inverseFourierTransform">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
						<xs:attribute name="magnitude" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="inverseLevelColors">
					<xs:complexType>
						<xs:attribute name="blackColor" use="required" type="color" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="whiteColor" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="inverseOpaque">
					<xs:complexType>
						<xs:attribute name="fill" use="required" type="color" />
						<xs:attribute name="target" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="kuwahara">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="level">
					<xs:complexType>
						<xs:attribute name="blackPoint" type="quantum" />
						<xs:attribute name="blackPointPercentage" type="double" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="midpoint" type="double" />
						<xs:attribute name="whitePoint" type="quantum" />
						<xs:attribute name="whitePointPercentage" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="levelColors">
					<xs:complexType>
						<xs:attribute name="blackColor" use="required" type="color" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="whiteColor" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="linearStretch">
					<xs:complexType>
						<xs:attribute name="blackPoint" use="required" type="double" />
						<xs:attribute name="whitePoint" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="liquidRescale">
					<xs:complexType>
						<xs:attribute name="geometry" use="required" type="geometry" />
					</xs:complexType>
				</xs:element>
				<xs:element name="lower">
					<xs:complexType>
						<xs:attribute name="size" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="magnify" type="empty" />
				<xs:element name="medianFilter">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="minify" type="empty" />
				<xs:element name="modulate">
					<xs:complexType>
						<xs:attribute name="brightness" use="required" type="double" />
						<xs:attribute name="hue" type="double" />
						<xs:attribute name="saturation" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="morphology">
					<xs:complexType>
						<xs:attribute name="arguments" type="xs:string" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="iterations" type="int" />
						<xs:attribute name="kernel" type="Kernel" />
						<xs:attribute name="method" use="required" type="MorphologyMethod" />
						<xs:attribute name="userKernel" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="motionBlur">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
						<xs:attribute name="radius" use="required" type="double" />
						<xs:attribute name="sigma" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="negate">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="onlyGrayscale" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="normalize" type="empty" />
				<xs:element name="oilPaint">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="opaque">
					<xs:complexType>
						<xs:attribute name="fill" use="required" type="color" />
						<xs:attribute name="target" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="orderedDither">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="thresholdMap" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="perceptible">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="epsilon" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="polaroid">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
						<xs:attribute name="caption" use="required" type="xs:string" />
						<xs:attribute name="method" use="required" type="PixelInterpolateMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="posterize">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="levels" use="required" type="int" />
						<xs:attribute name="method" type="DitherMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="preserveColorType" type="empty" />
				<xs:element name="quantize">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="settings" type="quantizeSettings" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="raise">
					<xs:complexType>
						<xs:attribute name="size" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="randomThreshold">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="high" type="quantum" />
						<xs:attribute name="low" type="quantum" />
						<xs:attribute name="percentageHigh" type="double" />
						<xs:attribute name="percentageLow" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="reduceNoise">
					<xs:complexType>
						<xs:attribute name="order" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="removeDefine">
					<xs:complexType>
						<xs:attribute name="format" use="required" type="MagickFormat" />
						<xs:attribute name="name" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="removeProfile">
					<xs:complexType>
						<xs:attribute name="name" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="rePage" type="empty" />
				<xs:element name="resample">
					<xs:complexType>
						<xs:attribute name="density" type="pointd" />
						<xs:attribute name="resolutionX" type="double" />
						<xs:attribute name="resolutionY" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="resize">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="percentage" type="double" />
						<xs:attribute name="percentageHeight" type="double" />
						<xs:attribute name="percentageWidth" type="double" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="roll">
					<xs:complexType>
						<xs:attribute name="xOffset" use="required" type="int" />
						<xs:attribute name="yOffset" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="rotate">
					<xs:complexType>
						<xs:attribute name="degrees" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="rotationalBlur">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
						<xs:attribute name="channels" type="Channels" />
					</xs:complexType>
				</xs:element>
				<xs:element name="sample">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="percentage" type="double" />
						<xs:attribute name="percentageHeight" type="double" />
						<xs:attribute name="percentageWidth" type="double" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="scale">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="percentage" type="double" />
						<xs:attribute name="percentageHeight" type="double" />
						<xs:attribute name="percentageWidth" type="double" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="segment">
					<xs:complexType>
						<xs:attribute name="clusterThreshold" type="double" />
						<xs:attribute name="quantizeColorSpace" type="ColorSpace" />
						<xs:attribute name="smoothingThreshold" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="selectiveBlur">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="radius" use="required" type="double" />
						<xs:attribute name="sigma" use="required" type="double" />
						<xs:attribute name="threshold" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="sepiaTone">
					<xs:complexType>
						<xs:attribute name="threshold" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="setArtifact">
					<xs:complexType>
						<xs:attribute name="name" use="required" type="xs:string" />
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="setAttenuate">
					<xs:complexType>
						<xs:attribute name="attenuate" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="setAttribute">
					<xs:complexType>
						<xs:attribute name="name" use="required" type="xs:string" />
						<xs:attribute name="value" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="setDefine">
					<xs:complexType>
						<xs:attribute name="flag" type="bool" />
						<xs:attribute name="format" use="required" type="MagickFormat" />
						<xs:attribute name="name" use="required" type="xs:string" />
						<xs:attribute name="value" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="setDefines">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="defines" type="iDefines" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="setHighlightColor">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="setLowlightColor">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="shade">
					<xs:complexType>
						<xs:attribute name="azimuth" type="double" />
						<xs:attribute name="colorShading" type="bool" />
						<xs:attribute name="elevation" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="shadow">
					<xs:complexType>
						<xs:attribute name="alpha" type="double" />
						<xs:attribute name="color" type="color" />
						<xs:attribute name="sigma" type="double" />
						<xs:attribute name="x" type="int" />
						<xs:attribute name="y" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="sharpen">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="shave">
					<xs:complexType>
						<xs:attribute name="leftRight" use="required" type="int" />
						<xs:attribute name="topBottom" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="shear">
					<xs:complexType>
						<xs:attribute name="xAngle" use="required" type="double" />
						<xs:attribute name="yAngle" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="sigmoidalContrast">
					<xs:complexType>
						<xs:attribute name="contrast" use="required" type="double" />
						<xs:attribute name="midpoint" type="double" />
						<xs:attribute name="sharpen" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="sketch">
					<xs:complexType>
						<xs:attribute name="angle" type="double" />
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="solarize">
					<xs:complexType>
						<xs:attribute name="factor" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="sparseColor">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="args" type="sparseColorArgs" />
						</xs:sequence>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="method" use="required" type="SparseColorMethod" />
					</xs:complexType>
				</xs:element>
				<xs:element name="spread">
					<xs:complexType>
						<xs:attribute name="amount" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="stegano">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="watermark" type="image" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="stereo">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="rightImage" type="image" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="strip" type="empty" />
				<xs:element name="swirl">
					<xs:complexType>
						<xs:attribute name="degrees" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="texture">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="threshold">
					<xs:complexType>
						<xs:attribute name="percentage" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="thumbnail">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="percentage" type="double" />
						<xs:attribute name="percentageHeight" type="double" />
						<xs:attribute name="percentageWidth" type="double" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="tile">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
						<xs:attribute name="args" type="xs:string" />
						<xs:attribute name="compose" use="required" type="CompositeOperator" />
					</xs:complexType>
				</xs:element>
				<xs:element name="tint">
					<xs:complexType>
						<xs:attribute name="opacity" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transform">
					<xs:complexType>
						<xs:attribute name="cropGeometry" type="geometry" />
						<xs:attribute name="imageGeometry" use="required" type="geometry" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transformOrigin">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transformReset" type="empty" />
				<xs:element name="transformRotation">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transformScale">
					<xs:complexType>
						<xs:attribute name="scaleX" use="required" type="double" />
						<xs:attribute name="scaleY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transformSkewX">
					<xs:complexType>
						<xs:attribute name="skewX" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transformSkewY">
					<xs:complexType>
						<xs:attribute name="skewY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transparent">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transparentChroma">
					<xs:complexType>
						<xs:attribute name="colorHigh" use="required" type="color" />
						<xs:attribute name="colorLow" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="transpose" type="empty" />
				<xs:element name="transverse" type="empty" />
				<xs:element name="trim" type="empty" />
				<xs:element name="unsharpmask">
					<xs:complexType>
						<xs:attribute name="amount" type="double" />
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="radius" use="required" type="double" />
						<xs:attribute name="sigma" use="required" type="double" />
						<xs:attribute name="threshold" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="vignette">
					<xs:complexType>
						<xs:attribute name="radius" type="double" />
						<xs:attribute name="sigma" type="double" />
						<xs:attribute name="x" type="int" />
						<xs:attribute name="y" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="wave">
					<xs:complexType>
						<xs:attribute name="amplitude" type="double" />
						<xs:attribute name="length" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="whiteThreshold">
					<xs:complexType>
						<xs:attribute name="channels" type="Channels" />
						<xs:attribute name="threshold" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="zoom">
					<xs:complexType>
						<xs:attribute name="geometry" type="geometry" />
						<xs:attribute name="height" type="int" />
						<xs:attribute name="percentage" type="double" />
						<xs:attribute name="percentageHeight" type="double" />
						<xs:attribute name="percentageWidth" type="double" />
						<xs:attribute name="width" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="draw" type="drawables" />
				<xs:group ref="clone" />
			</xs:choice>
			<xs:choice>
				<xs:group ref="clone" />
				<xs:element name="write" minOccurs="0">
					<xs:complexType>
						<xs:attribute name="fileName" type="xs:string" />
						<xs:attribute name="id" type="xs:string" />
					</xs:complexType>
				</xs:element>
			</xs:choice>
		</xs:sequence>
	</xs:group>
	<xs:group name="collection">
		<xs:sequence>
			<xs:element name="collection">
				<xs:complexType>
					<xs:sequence>
						<xs:group ref="read" minOccurs="2" maxOccurs="unbounded" />
						<xs:choice minOccurs="0" maxOccurs="unbounded">
							<xs:element name="coalesce" type="empty" />
							<xs:element name="deconstruct" type="empty" />
							<xs:element name="map">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="settings" minOccurs="0" type="quantizeSettings" />
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="optimize" type="empty" />
							<xs:element name="optimizePlus" type="empty" />
							<xs:element name="optimizeTransparency" type="empty" />
							<xs:element name="quantize">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="settings" minOccurs="0" type="quantizeSettings" />
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="rePage" type="empty" />
							<xs:element name="reverse" type="empty" />
						</xs:choice>
						<xs:element name="write" minOccurs="0">
							<xs:complexType>
								<xs:attribute name="fileName" use="required" type="xs:string" />
							</xs:complexType>
						</xs:element>
						<xs:choice>
							<xs:element name="appendHorizontally" type="empty" />
							<xs:element name="appendVertically" type="empty" />
							<xs:element name="combine">
								<xs:complexType>
									<xs:attribute name="channels" type="Channels" />
								</xs:complexType>
							</xs:element>
							<xs:element name="evaluate">
								<xs:complexType>
									<xs:attribute name="evaluateOperator" use="required" type="EvaluateOperator" />
								</xs:complexType>
							</xs:element>
							<xs:element name="flatten" type="empty" />
							<xs:element name="fx">
								<xs:complexType>
									<xs:attribute name="expression" use="required" type="xs:string" />
								</xs:complexType>
							</xs:element>
							<xs:element name="merge" type="empty" />
							<xs:element name="montage">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="settings" type="montageSettings" />
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="mosaic" type="empty" />
							<xs:element name="smushHorizontal">
								<xs:complexType>
									<xs:attribute name="offset" use="required" type="int" />
								</xs:complexType>
							</xs:element>
							<xs:element name="smushVertical">
								<xs:complexType>
									<xs:attribute name="offset" use="required" type="int" />
								</xs:complexType>
							</xs:element>
							<xs:element name="trimBounds" type="empty" />
						</xs:choice>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:group>
	<xs:group name="clone">
		<xs:sequence>
			<xs:element name="clone">
				<xs:complexType>
					<xs:group ref="actions" />
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:group>
	<xs:group name="iDefines">
		<xs:sequence>
			<xs:choice>
				<xs:element name="ddsWriteDefines" type="ddsWriteDefines" />
				<xs:element name="jpegReadDefines" type="jpegReadDefines" />
				<xs:element name="jpegWriteDefines" type="jpegWriteDefines" />
				<xs:element name="pdfReadDefines" type="pdfReadDefines" />
				<xs:element name="tiffReadDefines" type="tiffReadDefines" />
				<xs:element name="tiffWriteDefines" type="tiffWriteDefines" />
			</xs:choice>
		</xs:sequence>
	</xs:group>
	<xs:group name="drawables">
		<xs:sequence>
			<xs:choice>
				<xs:element name="affine">
					<xs:complexType>
						<xs:attribute name="scaleX" use="required" type="double" />
						<xs:attribute name="scaleY" use="required" type="double" />
						<xs:attribute name="shearX" use="required" type="double" />
						<xs:attribute name="shearY" use="required" type="double" />
						<xs:attribute name="translateX" use="required" type="double" />
						<xs:attribute name="translateY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="alpha">
					<xs:complexType>
						<xs:attribute name="paintMethod" use="required" type="PaintMethod" />
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="arc">
					<xs:complexType>
						<xs:attribute name="endDegrees" use="required" type="double" />
						<xs:attribute name="endX" use="required" type="double" />
						<xs:attribute name="endY" use="required" type="double" />
						<xs:attribute name="startDegrees" use="required" type="double" />
						<xs:attribute name="startX" use="required" type="double" />
						<xs:attribute name="startY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="bezier" type="coordinates" />
				<xs:element name="circle">
					<xs:complexType>
						<xs:attribute name="originX" use="required" type="double" />
						<xs:attribute name="originY" use="required" type="double" />
						<xs:attribute name="perimeterX" use="required" type="double" />
						<xs:attribute name="perimeterY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="clipPath">
					<xs:complexType>
						<xs:attribute name="clipPath" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="color">
					<xs:complexType>
						<xs:attribute name="paintMethod" use="required" type="PaintMethod" />
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="compositeImage">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="image" type="image" />
						</xs:sequence>
						<xs:attribute name="compose" type="CompositeOperator" />
						<xs:attribute name="offset" type="geometry" />
						<xs:attribute name="x" type="double" />
						<xs:attribute name="y" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="dashArray">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="dash" type="doubleArray" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="dashOffset">
					<xs:complexType>
						<xs:attribute name="offset" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="ellipse">
					<xs:complexType>
						<xs:attribute name="endDegrees" use="required" type="double" />
						<xs:attribute name="originX" use="required" type="double" />
						<xs:attribute name="originY" use="required" type="double" />
						<xs:attribute name="radiusX" use="required" type="double" />
						<xs:attribute name="radiusY" use="required" type="double" />
						<xs:attribute name="startDegrees" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fillAlpha">
					<xs:complexType>
						<xs:attribute name="alpha" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fillColor">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="fillRule">
					<xs:complexType>
						<xs:attribute name="fillRule" use="required" type="FillRule" />
					</xs:complexType>
				</xs:element>
				<xs:element name="font">
					<xs:complexType>
						<xs:attribute name="family" use="required" type="xs:string" />
						<xs:attribute name="stretch" type="FontStretch" />
						<xs:attribute name="style" type="FontStyleType" />
						<xs:attribute name="weight" type="FontWeight" />
					</xs:complexType>
				</xs:element>
				<xs:element name="gravity">
					<xs:complexType>
						<xs:attribute name="gravity" use="required" type="Gravity" />
					</xs:complexType>
				</xs:element>
				<xs:element name="line">
					<xs:complexType>
						<xs:attribute name="endX" use="required" type="double" />
						<xs:attribute name="endY" use="required" type="double" />
						<xs:attribute name="startX" use="required" type="double" />
						<xs:attribute name="startY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="miterLimit">
					<xs:complexType>
						<xs:attribute name="miterlimit" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="path" type="paths" />
				<xs:element name="point">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="pointSize">
					<xs:complexType>
						<xs:attribute name="pointSize" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="polygon" type="coordinates" />
				<xs:element name="polyline" type="coordinates" />
				<xs:element name="pushClipPath">
					<xs:complexType>
						<xs:attribute name="clipPath" use="required" type="xs:string" />
					</xs:complexType>
				</xs:element>
				<xs:element name="pushPattern">
					<xs:complexType>
						<xs:attribute name="height" use="required" type="int" />
						<xs:attribute name="id" use="required" type="xs:string" />
						<xs:attribute name="width" use="required" type="int" />
						<xs:attribute name="x" use="required" type="int" />
						<xs:attribute name="y" use="required" type="int" />
					</xs:complexType>
				</xs:element>
				<xs:element name="rectangle">
					<xs:complexType>
						<xs:attribute name="lowerRightX" use="required" type="double" />
						<xs:attribute name="lowerRightY" use="required" type="double" />
						<xs:attribute name="upperLeftX" use="required" type="double" />
						<xs:attribute name="upperLeftY" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="rotation">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="roundRectangle">
					<xs:complexType>
						<xs:attribute name="centerX" use="required" type="double" />
						<xs:attribute name="centerY" use="required" type="double" />
						<xs:attribute name="cornerHeight" use="required" type="double" />
						<xs:attribute name="cornerWidth" use="required" type="double" />
						<xs:attribute name="height" use="required" type="double" />
						<xs:attribute name="width" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="scaling">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="skewX">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="skewY">
					<xs:complexType>
						<xs:attribute name="angle" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeAlpha">
					<xs:complexType>
						<xs:attribute name="alpha" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeAntialias">
					<xs:complexType>
						<xs:attribute name="isEnabled" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeColor">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeLineCap">
					<xs:complexType>
						<xs:attribute name="lineCap" use="required" type="LineCap" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeLineJoin">
					<xs:complexType>
						<xs:attribute name="lineJoin" use="required" type="LineJoin" />
					</xs:complexType>
				</xs:element>
				<xs:element name="strokeWidth">
					<xs:complexType>
						<xs:attribute name="width" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="text">
					<xs:complexType>
						<xs:attribute name="encoding" type="xs:string" />
						<xs:attribute name="value" use="required" type="xs:string" />
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textAntialias">
					<xs:complexType>
						<xs:attribute name="isEnabled" use="required" type="bool" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textDecoration">
					<xs:complexType>
						<xs:attribute name="decoration" use="required" type="TextDecoration" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textDirection">
					<xs:complexType>
						<xs:attribute name="direction" use="required" type="TextDirection" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textInterlineSpacing">
					<xs:complexType>
						<xs:attribute name="spacing" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textInterwordSpacing">
					<xs:complexType>
						<xs:attribute name="spacing" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textKerning">
					<xs:complexType>
						<xs:attribute name="kerning" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="textUnderColor">
					<xs:complexType>
						<xs:attribute name="color" use="required" type="color" />
					</xs:complexType>
				</xs:element>
				<xs:element name="translation">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
						<xs:attribute name="y" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="viewbox">
					<xs:complexType>
						<xs:attribute name="lowerRightX" use="required" type="int" />
						<xs:attribute name="lowerRightY" use="required" type="int" />
						<xs:attribute name="upperLeftX" use="required" type="int" />
						<xs:attribute name="upperLeftY" use="required" type="int" />
					</xs:complexType>
				</xs:element>
			</xs:choice>
		</xs:sequence>
	</xs:group>
	<xs:group name="paths">
		<xs:sequence>
			<xs:choice>
				<xs:element name="arcAbs" type="pathArcs" />
				<xs:element name="arcRel" type="pathArcs" />
				<xs:element name="curvetoAbs" type="pathCurvetos" />
				<xs:element name="curvetoRel" type="pathCurvetos" />
				<xs:element name="linetoAbs" type="coordinates" />
				<xs:element name="linetoHorizontalAbs">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="linetoHorizontalRel">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="linetoRel" type="coordinates" />
				<xs:element name="linetoVerticalAbs">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="linetoVerticalRel">
					<xs:complexType>
						<xs:attribute name="x" use="required" type="double" />
					</xs:complexType>
				</xs:element>
				<xs:element name="movetoAbs" type="coordinates" />
				<xs:element name="movetoRel" type="coordinates" />
				<xs:element name="quadraticCurvetoAbs" type="pathQuadraticCurvetos" />
				<xs:element name="quadraticCurvetoRel" type="pathQuadraticCurvetos" />
				<xs:element name="smoothCurvetoAbs" type="coordinates" />
				<xs:element name="smoothCurvetoRel" type="coordinates" />
				<xs:element name="smoothQuadraticCurvetoAbs" type="coordinates" />
				<xs:element name="smoothQuadraticCurvetoRel" type="coordinates" />
			</xs:choice>
		</xs:sequence>
	</xs:group>
	<xs:group name="read">
		<xs:sequence>
			<xs:element name="read" type="image" />
		</xs:sequence>
	</xs:group>
	<xs:group name="iReadDefines">
		<xs:sequence>
			<xs:choice>
				<xs:element name="jpegReadDefines" type="jpegReadDefines" />
				<xs:element name="pdfReadDefines" type="pdfReadDefines" />
				<xs:element name="tiffReadDefines" type="tiffReadDefines" />
			</xs:choice>
		</xs:sequence>
	</xs:group>
	<xs:element name="msl">
		<xs:complexType>
			<xs:sequence>
				<xs:choice>
					<xs:group ref="read" />
					<xs:group ref="collection" />
				</xs:choice>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>